home *** CD-ROM | disk | FTP | other *** search
/ QRZ! Ham Radio 4 / QRZ Ham Radio Callsign Database - Volume 4.iso / digests / tcp / 940017.txt < prev    next >
Internet Message Format  |  1994-11-13  |  15KB

  1. Date: Fri, 21 Jan 94 04:30:08 PST
  2. From: Advanced Amateur Radio Networking Group <tcp-group@ucsd.edu>
  3. Errors-To: TCP-Group-Errors@UCSD.Edu
  4. Reply-To: TCP-Group@UCSD.Edu
  5. Precedence: Bulk
  6. Subject: TCP-Group Digest V94 #17
  7. To: tcp-group-digest
  8.  
  9.  
  10. TCP-Group Digest            Fri, 21 Jan 94       Volume 94 : Issue   17
  11.  
  12. Today's Topics:
  13.                        TCP-Group Digest V94 #16
  14.                 TCP MSS and TCP WIN settings (3 msgs)
  15.                  TNOS Missing Function - NOT (2 msgs)
  16.                        Wampes loopback (3 msgs)
  17.  
  18. Send Replies or notes for publication to: <TCP-Group@UCSD.Edu>.
  19. Subscription requests to <TCP-Group-REQUEST@UCSD.Edu>.
  20. Problems you can't solve otherwise to brian@ucsd.edu.
  21.  
  22. Archives of past issues of the TCP-Group Digest are available
  23. (by FTP only) from UCSD.Edu in directory "mailarchives".
  24.  
  25. We trust that readers are intelligent enough to realize that all text
  26. herein consists of personal comments and does not represent the official
  27. policies or positions of any party.  Your mileage may vary.  So there.
  28. ----------------------------------------------------------------------
  29.  
  30. Date: Fri, 21 Jan 94 09:50:38 GMT
  31. From: A.D.S.Benham@bnr.co.uk
  32. Subject: TCP-Group Digest V94 #16
  33. To: TCP-Group@UCSD.EDU
  34.  
  35. > ------------------------------
  36. > Date: Wed, 19 Jan 94 16:46:28 CST
  37. > From: Jack Snodgrass                    <kf5mg@kf5mg.ampr.org>
  38. > Subject: TCP MSS and TCP WIN settings
  39. > To: tcp-group mailling list             <tcp-group@ucsd.edu>
  40. > Is there any way to assign a TCP WIN and TCP MSS setting per port? 9600b ports
  41. > can use larger Window's and Packets than 1200b ports. I'm sure that it's been
  42. > asked before but now that I've got a 9600b port going, I need to know what to
  43. > do to get the most out of the system. Thanks.
  44. > 73's  de  Jack  -  kf5mg
  45. > Internet        -  kf5mg@kf5mg.ampr.org            -  44.28.0.14
  46. > AX25net         -  kf5mg@kf5mg.#dfw.tx.usa.noam    -  home (817) 488-4386
  47. > Dialup          -  kf5mg@tcet.unt.edu              -  work (looking  for)
  48.  
  49. I put the window mod into my JNOS sources last year. I'll post the deltas next
  50. week.
  51. The settings are set with the "ifconfig <port>" subcommands. Setting the window
  52. is slightly more complicated than it might at first appear, because when one
  53. initiates a session on port <n> the reverse path traffic might arrive on port <m>.
  54. I therefore use the "tcp window" for the SYN frame, and then set the window on
  55. all other outgoing frames for that session according to the value set for the
  56. window on the port on which the replies are received.
  57.  
  58. Don't worry if it sounds too complicated, I'll mail the deltas.
  59.  
  60. 73,
  61.  
  62. Andrew Benham, G8FSL
  63. --------------------------------------------------------------------
  64. adsb@bnr.co.uk   BNR Europe Ltd, London Road, Harlow, Essex CM17 9NA
  65. adsb@bnr.ca      +44 279 402372    Fax: +44 279 402029
  66. Home:            g8fsl@g8fsl.ampr.org [44.131.19.165]
  67. --------------------------------------------------------------------
  68.  
  69. ------------------------------
  70.  
  71. Date: Wed, 19 Jan 1994 19:19:08 -0800
  72. From: Phil Karn <karn@qualcomm.com>
  73. Subject: TCP MSS and TCP WIN settings
  74. To: kf5mg@kf5mg.ampr.org
  75.  
  76. If the physical port is on the same machine as the TCP, then TCP
  77. already limits its MSS to avoid fragmentation out through that port.
  78. For example, if the other end advertises that it will accept a MSS of
  79. 1460 bytes but the MTU of the local interface you'll take to reach it
  80. is only 576 bytes, then the local TCP will use a MSS of only 536 bytes
  81. (576-40).
  82.  
  83. If the interface with the small MTU is on another router, however, the
  84. originating TCP won't know this and fragmentation will occur.
  85.  
  86. Note also that the effective window size used by TCP, the "congestion
  87. window" is always less than the window advertised by the other
  88. end. The congestion window size is controlled by the slow start and
  89. congestion control algorithms in TCP. These are not perfect, but they
  90. do help.
  91.  
  92. Phil
  93.  
  94. ------------------------------
  95.  
  96. Date: Thu, 20 Jan 94 05:53:01 CST
  97. From: Jack Snodgrass                    <kf5mg@kf5mg.ampr.org>
  98. Subject: TCP MSS and TCP WIN settings
  99. To: tcp-group@ucsd.edu
  100.  
  101. Phil Karn writes:
  102. > If the physical port is on the same machine as the TCP, then TCP
  103. > already limits its MSS to avoid fragmentation out through that port.
  104. > For example, if the other end advertises that it will accept a MSS of
  105. > 1460 bytes but the MTU of the local interface you'll take to reach it
  106. > is only 576 bytes, then the local TCP will use a MSS of only 536 bytes
  107. > (576-40).
  108.  
  109.     Well...  that's what I thought should happen, but I tried it with JNOS 
  110. 1.10x15.  There's a IFCONFIG MTU command that I used to set the MTU to a 
  111. value of 256.  The MSS was 1024 and the WINDOW was 4K.  When I made a FTP 
  112. connect, I figured that NOS would use 256 byte packets, but it used 512 
  113. byte packets.  The IFCONFIG MTU value didn't seem to have an effect.  
  114.     I took a look at the TCP*.C files. There are only a couple of places
  115. where the Tcp_mss and Tcp_window settings are assigned to a connection. It
  116. appears that it would be easy to change this to a Tcp_mss.Interface and 
  117. Tcp_window.Interface so that you could use different Window and MSS sizes 
  118. per interface. The only problem is I don't see where in the TCP*.C code 
  119. that it references what Interface it's using. Any idea how to tell what 
  120. Interface a TCP socket is going to be using?
  121.  
  122. 73's  de  Jack  -  kf5mg
  123. Internet        -  kf5mg@kf5mg.ampr.org            -  44.28.0.14
  124. AX25net         -  kf5mg@kf5mg.#dfw.tx.usa.noam    -  home (817) 488-4386
  125. Dialup          -  kf5mg@tcet.unt.edu              -  work (looking  for)
  126.  
  127. ------------------------------
  128.  
  129. Date: Thu, 20 Jan 1994 14:10:25 -0600
  130. From: miltonm@inetnode.austin.ibm.com (Milton Miller)
  131. Subject: TCP MSS and TCP WIN settings
  132. To: kf5mg@kf5mg.ampr.org
  133.  
  134. mss is automatically lowered to mtu-40 based on the mtu of the first
  135. hop in the routing table.  For window, you would have to rely on
  136. the congestion window I guess.
  137.  
  138. Some tcp stacks have started keeping mtu in the routing table (probably
  139. only those that use the "new" mtu probing.  Who is adding that to nos? :-)
  140.  
  141. milton
  142. --
  143. Milton Miller  KB5TKF  miltonm@austin.ibm.com
  144. I never speak for IBM
  145.  
  146. ------------------------------
  147.  
  148. Date: Thu, 20 Jan 94 09:02:13 EST
  149. From: brian@lantz.cftnet.com (Brian A. Lantz)
  150. Subject: TNOS Missing Function - NOT
  151. To: tcp-group@ucsd.edu
  152.  
  153. Come on, guys! It's a little unfair to blame TNOS for not including standard
  154. BorlandC 3.x DOS library functions in case you are running a version of the
  155. compiler that is 2-3 years old! The before mentioned function is a part of
  156. Borland's library for versions 3.0, 3.1, and 4.0.
  157.  
  158. Lack of memory.... Borland C 3.x and up uses EMS/XMS to permit virtually
  159. unlimited source size. Is this file big, yep!
  160.  
  161. As for the commment about it being perfect out of the box, NOT! If you
  162. expected that it would compile under every possible combination, your
  163. expectations are based in the clouds! Your mileage will vary!
  164.  
  165. As for TNOS support, I suggest subscribing to TNOS-TOPICS and sending the
  166. messages there. I don't know that Brian wants a lot of "how do you compile
  167. this TNOS feature" stuff in this group. We don't want to abuse his
  168. understanding.
  169.  
  170.                /----------------------------------------------/
  171.               /   Brian A. Lantz/KO4KS                       /
  172.              /                                              /
  173.             /   Packet:   KO4KS@KO4KS.#TPAFL.FL.USA.NA     /
  174.            /   Internet: brian@lantz.cftnet.com           /
  175.           /        {   printf ("Hey Jude");              /
  176.          /                bad = !make;                  /
  177.         /               better = sad_song;    }        /
  178.        /----------------------------------------------/
  179.  
  180. ------------------------------
  181.  
  182. Date: Fri, 21 Jan 94 04:26:00 -0000
  183. From: mikebw@bilow.uu.ids.net (Mike Bilow)
  184. Subject: TNOS Missing Function - NOT
  185. To: tcp-group@ucsd.edu
  186.  
  187. Cc: brian@lantz.cftnet.com
  188.  
  189. In a msg on <Jan 20 14:02>, Brian A. Lantz writes:
  190.  
  191.  BAL> Come on, guys! It's a little unfair to blame TNOS for not 
  192.  BAL> including standard BorlandC 3.x DOS library functions in 
  193.  BAL> case you are running a version of the compiler that is 2-3 
  194.  BAL> years old! The before mentioned function is a part of 
  195.  BAL> Borland's library for versions 3.0, 3.1, and 4.0.
  196.  
  197. The _dos_xxxx() form (like "_dos_getfileattr()") of the Borland library calls
  198. was added for increased source level compatibility with Microsoft library calls
  199. as of BC++ 3.0.  These are made equivalent in system header macro definitions
  200. to the old form Borland calls (like "getfileattr()").  Another motivation for
  201. the change was to more clearly indicate which functions are not part of the
  202. ANSI C specification because they are specific to the operating system or
  203. platform.  ANSI suggests that such symbols be started with the extra prepended
  204. underscore character.  Similar changes were made in designating "near" and
  205. "far" keywords as "_near" and "_far" in newer compilers.
  206.  
  207. It would be fairly easy to generate a special header file for older Borland
  208. compilers that would implement some extremely simple text translations, such as
  209. defining the newer prefaces (like "_dos_") so that they were stripped by
  210. translating them to empty text strings.  This special header file would have to
  211. be included ahead of any system header files.  Somebody has probably already
  212. done this somewhere, but I don't know of it.
  213.  
  214. Changes to the Borland assembler are a more irritating situation.  Borland
  215. doesn't really seem to care very much about the quality of TASM, essentially
  216. regarding it as a throwaway product.  Source code that assembles perfectly with
  217. TASM 2.5 (from BC++ 2.0) breaks substantially under the newer TASM 3.1 (from
  218. BC++ 3.1), a known fact for a long time.  You almost never see this with the C
  219. compilers, where source code only breaks in the opposite direction, going from
  220. newer to older compilers.  The most irritating part of it for me is that TASM
  221. actually has a switch which is supposed to allow it to emulate any prior
  222. version of TASM or MASM, but it doesn't work right.  Probably the best solution
  223. would be to provide a prebuilt ASMOBJ.LIB of the assembly modules as Phil does
  224. for the base KA9Q source kit; he originally started doing this when TC 2.0 was
  225. all that some people had and Borland didn't even make an assembler.
  226.  
  227.  BAL> Lack of memory.... Borland C 3.x and up uses EMS/XMS to permit 
  228.  BAL> virtually unlimited source size. Is this file big, yep!
  229.  
  230. BC++ 2.0 comes with two different command-line versions, BCC.EXE and BCCX.EXE. 
  231. BCC runs in real mode, while BCCX runs in protected mode with an included DOS
  232. extender.  You can also use compiler switches on BCC to enable it to use
  233. XMS/EMS while compiling.
  234.  
  235. There are some bugs in the old Borland tools that can cause serious XMS/EMS
  236. corruption, and this can be devastating if you are running SMARTDRV or a
  237. similar disk cache which maintains disk buffers in XMS/EMS.  BCCX spawns the
  238. real mode linker, TLINK, instead of the protected mode linker, TLINKX.  If you
  239. use the "-l" switch on BCCX to pass an argument to the linker which enables the
  240. use of XMS/EMS, then this will conflict with the loaded DOS extender and very
  241. bad things will occur.  When using BCCX, you must either live with the real
  242. mode linker and no XMS/EMS, or use the protected mode linker manually by
  243. starting TLINKX from the command line.  By default, NOS MAKEFILEs invoke the
  244. compiler as a final step just to run the linker, and this might have to be
  245. changed.  The real mode linker should work fine for NOS in most cases, since
  246. you will probably run out of DGROUP space long before you run out of symbol
  247. space.
  248.  
  249. As was noted by someone else, the MAKE utility can be invoked with the "-S"
  250. switch to enable swapping itself out of memory, but there is a fairly serious
  251. speed penalty for that.  When I was compiling NOS on a 386SX-16 in the old
  252. days, it took about an hour from scratch.  On my current system, running the
  253. compiler in an OS/2 DOS emulation with DPMI seeing a lot of virtual memory, it
  254. takes about three or four minutes.
  255.  
  256.  BAL> As for TNOS support, I suggest subscribing to TNOS-TOPICS and 
  257.  BAL> sending the messages there. I don't know that Brian wants a 
  258.  BAL> lot of "how do you compile this TNOS feature" stuff in this 
  259.  BAL> group. We don't want to abuse his understanding.
  260.  
  261. Why are you referring to yourself in the third person?  Have you been reading
  262. "The Education of Henry Adams" or something?
  263.  
  264. -- Mike
  265.  
  266. ------------------------------
  267.  
  268. Date: Thu, 20 Jan 94 15:55:30 EDT
  269. From: "Jan Jaeger" <JANJ@ACCIVM.acci.COM.AU>
  270. Subject: Wampes loopback
  271. To: tcp-group@ucsd.edu
  272.  
  273. I have ported wampes to the IBM RT (6150 & 6151) running AOS (BSD 4.3).
  274. I seem to have run into a problem where packets send over the loopback
  275. interface cause wampes to crash.  The problem is that loopback->send
  276. is defined as NULLFP in iface.c and ip_route() tries to call (loopback->send).
  277. I have also compiled wampes in an RS6K (3.2.4) and the same problem exist.
  278. Am I safe to assume that this is not a porting problem? (It still needs to
  279. be fixed of course).
  280.  
  281. Jan PA3EFU/VK3CEX
  282.  
  283. ------------------------------
  284.  
  285. Date: Thu, 20 Jan 94 21:40:00 MST
  286. From: Dieter Deyke <deyke@mdddhd.fc.hp.com>
  287. Subject: Wampes loopback
  288. To: JANJ@ACCIVM.acci.COM.AU, tcp-group@ucsd.edu
  289.  
  290. > I have ported wampes to the IBM RT (6150 & 6151) running AOS (BSD 4.3).
  291.  
  292. Could  you  send  me  your  changes,  so  I  can  merge  them  into  the
  293. distribution?
  294.  
  295. > I seem to have run into a problem where packets send over the loopback
  296. > interface cause wampes to crash.  The problem is that loopback->send
  297. > is defined as NULLFP in iface.c and ip_route() tries to call (loopback->send).
  298. > I have also compiled wampes in an RS6K (3.2.4) and the same problem exist.
  299. > Am I safe to assume that this is not a porting problem? (It still needs to
  300. > be fixed of course).
  301.  
  302. This can only  happen  if you set up a route to some  address  different
  303. from 127.0.0.1 thru the loopback interface.  Just don't do this.  In the
  304. next  version of WAMPES I will put in a  safeguard,  which  will  ignore
  305. packets routed this way, instead of crashing the system.
  306.  
  307. > Jan PA3EFU/VK3CEX
  308.  
  309. --
  310. Dieter Deyke - deyke@fc.hp.com - dk5sg@db0sao.ampr.org
  311.  
  312. ------------------------------
  313.  
  314. Date: Fri, 21 Jan 94 05:01:00 -0000
  315. From: mikebw@bilow.uu.ids.net (Mike Bilow)
  316. Subject: Wampes loopback
  317. To: tcp-group@ucsd.edu
  318.  
  319. Cc: JANJ@ACCIVM.acci.COM.AU
  320.  
  321. In a msg on <Jan 20 19:55>, Jan Jaeger of writes:
  322.  
  323.  JJ> I have ported wampes to the IBM RT (6150 & 6151) running AOS (BSD 4.3).
  324.  
  325. Great!  We have one of those dinosaurs here.  Unfortunately, it is running AIX.
  326.  Still worse, it is running AIX v2, since AIX v3 needs the RS machines and will
  327. not run on the RT machines.  I think we have the native TCP/IP support, but no
  328. one knows where the manual is, and no one at IBM seemed to care much about
  329. locating another one even when we dangled small bills in front of them.
  330.  
  331. Is your port available at any FTP site, ideally UCSD.EDU?
  332.  
  333. -- Mike
  334.  
  335. ------------------------------
  336.  
  337. End of TCP-Group Digest V94 #17
  338. ******************************
  339.